#pragma once
#include "IndexData.h"

namespace Graphics{
	class IndexBuffer{
	public:
		IndexBuffer(IndexDataPtr inds, RenderContext* handle){
			if(inds->m_numInds <= 0){
				LOG_ERROR("IndexBuffer - Invalid initialization data passed to indexbuffer.");
				assert(0);
			}

			m_indCount = unsigned int(inds->m_numInds);
		}
		virtual ~IndexBuffer(){}

		virtual void setBuffer(void* context) = 0;
		unsigned int getIndCount() { return m_indCount; }
	private:
		unsigned int m_indCount;
	};

	typedef boost::shared_ptr<IndexBuffer> IndexBufferPtr;
}